axios.defaults.baseURL = 'http://api-breakingnews-web.itheima.net';

// 添加请求拦截器
// use方法里面可以传递两个函数
axios.interceptors.request.use(function (config) {
    if (config.url.indexOf('/my') !== -1) {
        // 所有头信息设置不要使用对象赋值，要使用 .属性 ，不会出现覆盖
        config.headers.Authorization = localStorage.getItem('token')
    }
    // 修改完毕返回config
    return config
}, function (error) {
    // 以promise形式将问题抛出
    return Promise.reject(error)
})

// 添加响应拦截器
axios.interceptors.response.use(function (response) {
    if (response.data.message === "身份认证失败！") {
        // 跳转到登录页面，销毁token
        location.href = '/login.html'
        localStorage.removeItem('token')
    }
    return response;
}, function (error) {
    return Promise.reject(error)
})

function padDate (data) {
    let date = new Date(data)
    let y = padZero(date.getFullYear());
    let m = padZero(date.getMonth() + 1);
    let d = padZero(date.getDate());

    let hh = padZero(date.getHours());
    let mm = padZero(date.getMinutes());
    let ss = padZero(date.getSeconds());

    return `${y}-${m}-${d} ${hh}:${mm}:${ss}`
}

function padZero (n) {
    return n < 10 ? '0' + n : n
}